﻿
using System;
using DevComponents.DotNetBar;

namespace Shine.Framework
{
    public interface ICommandPoolEx
    {
        BaseItem AddCommand(object obj);

        ICommand FindCommand(string commandName);

        ICommand get_Command(int index);

        ICommand LoadCommand(string fileName, string className);

        ICommand LoadCommand(string fileName, string className, int subType);

        void LoadCommands(string fileName);

        void Remove(ICommand pCommand);

        void RemoveAll();

        void UpdateCommandState();

        void SetHook(object pHook);

        int Count { get; }

        object Hook { get; set; }

         BaseItem FindBaseItem(string commandName);
    }
}

